#pragma once

#include <Game/Entity.h>
#include <Totem/Component.h>
#include <Totem/PropertyList.h>

namespace Game
{
	namespace World
	{
		namespace Components
		{
			class Room;
			class RoomExistence : public Totem::Component
			{
			public:
				COMPONENT_1(Entity, RoomExistence, Room);

				RoomExistence(Entity &owner, const T_String &type, Room &room);
				virtual ~RoomExistence();

				Room &getRoom() { return *room.get(); }

			private:
				Totem::Property<Room*> room;
				T_HashedString enterEventId;
			};
		}
	}
}
